package com.lotea.android.andreaditlater.io;

public class API {
	public static final String URL = "https://readitlaterlist.com/v2/";
	public static final String URL_TEXTONLY = "https://text.readitlaterlist.com/v2/";

	public interface Headers {
		public static final String ERROR = "X-Error";
		public static final String USER_LIMIT = "X-Limit-User-Limit";
		public static final String USER_REMAINING = "X-Limit-User-Remaining";
		public static final String USER_RESET = "X-Limit-User-Reset";
		public static final String KEY_LIMIT = "X-Limit-Key-Limit";
		public static final String KEY_REMAINING = "X-Limit-Key-Remaining";
		public static final String KEY_RESET = "X-Limit-Key-Reset";
	}

	public interface Methods {

		public interface Add {
			public static final String URL = "add";

			public interface Params {
				public static final String URL = "url";
				public static final String TITLE = "title";
				public static final String REF_ID = "ref_id";
			}
		}

		public interface Send {
			public static final String URL = "send";

			public interface Params {
				public static final String NEW = "new";
				public static final String READ = "read";
				public static final String UPDATE_TITLE = "update_title";
				public static final String UPDATE_TAGS = "update_tags";
			}
		}

		public interface Get {
			public static final String URL = "get";

			public interface Params {
				public static final String FORMAT = "format";
				public static final String MY_APP_ONLY = "myAppOnly";
				public static final String SINCE = "since";
				public static final String STATE = "state";
				public static final String COUNT = "count";
				public static final String PAGE = "page";
				public static final String TAGS = "tags";
			}
			
			public interface ParamValues {
				public static final String STATE_READ = "read";
				public static final String STATE_UNREAD = "unread";
			}
			
			public interface Keys {
				public static final String STATUS = "status";
				public static final String COMPLETE = "complete";
				public static final String SINCE = "since";
				public static final String LIST = "list";
				public static final String ITEM_ID = "item_id";
				public static final String TITLE = "title";
				public static final String URL = "url";
				public static final String TIME_UPDATED = "time_updated";
				public static final String TAGS = "tags";
				public static final String TIME_ADDED = "time_added";
				public static final String STATE = "state";
			}
			
			public interface Values {
				public static final int STATE_READ = 1;
				public static final int STATE_UNREAD = 0;
			}
		}

		public interface Stats {
			public static final String URL = "stats";

			public interface Params {
				public static final String FORMAT = "format";
			}
		}

		public interface Authentication {
			public static final String URL = "auth";

			public interface Params {
				public static final String API_KEY = "apikey";
				public static final String USERNAME = "username";
				public static final String PASSWORD = "password";
			}
		}

		public interface SignUp {
			public static final String URL = "signup";
		}

		public interface Text {
			public static final String URL = "text";

			public interface Params {
				public static final String URL = "url";
				public static final String MODE = "mode";
				public static final String IMAGES = "images";
			}
		}

		public interface ApiStatus {
			public static final String URL = "api";
		}
	}
}
